﻿Imports System.IO
Public Class Form2

    Dim auto, cache, fermeture, dossier As String

    Sub ecritureFichier()
        Try
            'Instanciation du StreamWriter avec passage du nom du fichier
            Dim monStreamWriter As StreamWriter = New StreamWriter("settings.ini") 'Ecriture du texte dans votre fichier
            monStreamWriter.WriteLine("[settings]")
            monStreamWriter.WriteLine("dossier=" & TextBox1.Text)
            monStreamWriter.WriteLine("auto=" & auto)
            monStreamWriter.WriteLine("cache=" & cache)
            monStreamWriter.WriteLine("fermeture=" & fermeture)
            'Fermeture du StreamWriter (Trés important)
            monStreamWriter.Close()
        Catch ex As Exception
            'Code exécuté en cas d'exception
            MsgBox(ex.Message)
        End Try
    End Sub

    Function RecupereIni(ByVal Cle As String) As String

        For Each Ligne As String In File.ReadAllLines("settings.ini")
            'Découpe la ligne au niveau de "=" (s'il existe),
            'compare la premiere partie de la ligne (soit la clé)
            If Ligne.Split("=")(0) = Cle Then
                'Recupère la seconde partie de la ligne (soit la valeur)
                Return Ligne.Split("=")(1)
            End If
        Next
        'Sinon ne retourne rien
        Return ""

    End Function

    Sub donnees()
        If CheckBox1.Checked = True Then
            auto = "oui"
        Else
            auto = "non"
        End If
        If CheckBox2.Checked = True Then
            cache = "oui"
        Else
            cache = "non"
        End If
        If CheckBox3.Checked = True Then
            fermeture = "oui"
        Else
            fermeture = "non"
        End If
        ecritureFichier()
        Me.close()
    End Sub

    Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Form3.Close()
        If File.Exists("settings.ini") Then
            dossier = RecupereIni("dossier")
            TextBox1.Text = dossier
            Button2.Enabled = True
            If RecupereIni("auto") = "oui" Then
                CheckBox1.Checked = True
            End If
            If RecupereIni("cache") = "oui" Then
                CheckBox2.Checked = True
            End If
        End If
    End Sub

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        FolderBrowserDialog1.ShowDialog()
        If File.Exists(FolderBrowserDialog1.SelectedPath & "\wow.exe") Then
            TextBox1.Text = FolderBrowserDialog1.SelectedPath
            Button2.Enabled = True
        Else
            If File.Exists(FolderBrowserDialog1.SelectedPath & "\game.exe") Then
                TextBox1.Text = FolderBrowserDialog1.SelectedPath
                Button2.Enabled = True
            Else
                MsgBox("L'éxécutable de World of Warcraft est introuvable.", MsgBoxStyle.Exclamation, "Smart Launcher WoW")
                Button2.Enabled = False
            End If
        End If

    End Sub

    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        If TextBox1.Text = "" Then
            MsgBox("Veuillez sélectionner votre dossier WoW.", MsgBoxStyle.Exclamation, "Smart Launcher WoW")
        Else
            donnees()
        End If

    End Sub

    Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
        Me.Close()
    End Sub

    Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
        If TextBox1.Text = "" Then
            MsgBox("Veuillez sélectionner votre dossier WoW.", MsgBoxStyle.Exclamation, "Smart Launcher WoW")
        Else
            If MsgBox("Attention ! Etes-vous sûr de vouloir supprimer les données de comptes et d'addons ?", vbYesNo, "Smart Launcher WoW") = vbYes Then
                If Directory.Exists(dossier & "\WTF\Account") Then
                    Directory.Delete(dossier & "\WTF\Account", True)
                End If
                MsgBox("Données de comptes et d'addons supprimées.", MsgBoxStyle.Information, "Smart Launcher WoW")
            Else
                MsgBox("Action annulée.", MsgBoxStyle.Information, "Smart Launcher WoW")
            End If
        End If
    End Sub

    Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
        If TextBox1.Text = "" Then
            MsgBox("Veuillez sélectionner votre dossier WoW.", MsgBoxStyle.Exclamation, "Smart Launcher WoW")
        Else
            If MsgBox("Attention ! Etes-vous sûr de vouloir réinitialiser les paramètres de WoW ?", vbYesNo, "Smart Launcher WoW") = vbYes Then
                If File.Exists(dossier & "\WTF\Config.wtf") Then
                    File.Delete(dossier & "\WTF\Config.wtf")
                End If
                MsgBox("Paramètres de World of Warcraft réinitialisés.", MsgBoxStyle.Information, "Smart Launcher WoW")
            Else
                MsgBox("Action annulée.", MsgBoxStyle.Information, "Smart Launcher WoW")
            End If
        End If
    End Sub

    Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click
        If TextBox1.Text = "" Then
            MsgBox("Veuillez sélectionner votre dossier WoW.", MsgBoxStyle.Exclamation, "Smart Launcher WoW")
        Else
            If MsgBox("Attention ! Etes-vous sûr de vouloir réinitialiser les paramètres, données de comptes et d'addons de World of Warcraft ?", vbYesNo, "Smart Launcher WoW") = vbYes Then
                If Directory.Exists(dossier & "\WTF") Then
                    Directory.Delete(dossier & "\WTF", True)
                End If
                MsgBox("Les paramètres, données de comptes et d'addons ont étés réinitialisés.", MsgBoxStyle.Information, "Smart Launcher WoW")
            Else
                MsgBox("Action annulée.", MsgBoxStyle.Information, "Smart Launcher WoW")
            End If
        End If
    End Sub
End Class